package day17.zhiyou100;

import java.io.*;
import java.util.ArrayList;
import java.util.List;

// 缓冲字符输出流
public class Demo08_BufferedWriter {

    // 缓冲字符输出流
    public static void m1() throws Exception {
        File file = new File("D:\\aa\\bb\\buffer1.txt");
        FileWriter fw = new FileWriter(file,true);// 追加
        // 创建缓冲字符输出流对象
        BufferedWriter bw = new BufferedWriter(fw);// 8192个字符
        bw.write("我们再学习缓冲字符输出流".toCharArray());
        // 刷新
        bw.flush();
        // 再次写
        bw.newLine(); // 换行  \r\n
        bw.write("今天是星期五，明天就是星期六");
        bw.flush();
        // 关闭流
        bw.close();
        fw.close();
        //System.out.println();
    }

    // 缓冲字符输入流
    public static void m2() throws Exception {
        File file = new File("D:\\aa\\bb\\buffer1.txt");
        // 准备文件字符输入流对象
        FileReader fr = new FileReader(file);
        // 创建缓冲字符输入流对象
        BufferedReader br = new BufferedReader(fr);
        // 读取
        // 成行读取
        //String lineText = br.readLine();
        //包含该行内容的字符串，不包含任何行终止符，如果已到达流末尾，则返回 null
        List<String> context = new ArrayList<>();
        String line;
        while ((line = br.readLine()) != null) {
            context.add(line);
        }
        // 关闭流
        br.close();
        fr.close();
        // 查看
        System.out.println(context);//username:张三,password:李四
        String usernameKey = context.get(0).split(":")[0];// username
        String usernameValue = context.get(0).split(":")[1];//张三
        System.out.println(usernameKey + "---" + usernameValue);
        String passwordKey = context.get(1).split(":")[0];// username
        String passwordValue = context.get(1).split(":")[1];//张三
        System.out.println(passwordKey + "---" + passwordValue);
        // 数据持久化----->把数据保存到文件中
    }

    public static void main(String[] args) throws Exception {
        m2();
    }

}
